package com.oig.sys.base.dto;

import com.oig.common.validator.GroupAdd;
import com.oig.common.validator.GroupEdit;
import io.swagger.v3.oas.annotations.media.Schema;

import lombok.Data;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.NotEmpty;

@Schema
@Data
public class PortDto {

	@Schema(description = "港口编码", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
	@NotEmpty(message = "参数错误,港口编码不能为空", groups={GroupAdd.class, GroupEdit.class})
	@Length(max = 32,min = 3, message = "参数错误,港口编码不超过32位", groups={GroupAdd.class,GroupEdit.class})
	private String code;
	@Schema(description = "港口名称", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
	@NotEmpty(message = "参数错误,名称不能为空", groups={GroupAdd.class,GroupEdit.class})
	private String name;
	@Schema(description = "英文名")
	private String enName;
	@Schema(description = "所在国家编码")
	private String countryCode;
	@Schema(description = "所在国家名称")
	private String countryName;
	@Schema(description = "SAP维护的所在国家编码")
	private String countryApplyCode;
	@Schema(description = "所在城市编码")
	private String cityCode;
	@Schema(description = "所在城市名称")
	private String cityName;
	@Schema(description = "详细地址")
	private String address;
	@Schema(description = "状态")
	private String status;
	@Schema(description = "排序号")
	private Integer sort;

	@Schema(description = "原编码")
	private String oldCode;

	@Schema(description = "口岸code")
	private String harborCode;

	@Schema(description = "口岸名称")
	private String harborName;

	@Schema(description = "海关code")
	private String customsCode;

	@Schema(description = "海关名称")
	private String customsName;
	@Schema(description = "名称/编码")
	private String searchWord;
}
